Infrastructure services or infrastructure as a service (IaaS) delivers computer infrastructure as a service, typically in a platform virtualization environment. Service subscribers and clients, rather than purchasing servers, software, data center space or network equipment, instead buy those resources as a fully outsourced service. The service is typically billed on a utility computing basis. The amount of resources consumed and therefore the costs are based on the level of subscriber activity.
In general, a server layer is configured to include computer hardware or computer software products that are specifically designed for the delivery of services to a particular subscriber. The services may include access to multi-core processors, cloud-specific operating systems and additional computing services. Some IaaS provisioning platforms provide resources for information technology communication (ITC) where availability of resources is guaranteed according to service level agreements (SLAs).
One embodiment of the IaaS paradigm is an infrastructure computing cloud (ICC). In an ICC, the subscribers purchase ITC resources in the form of virtual machines (VMs), virtual storage, and virtual networks. The subscribers are charged according to a pay-as-you-go model. The subscribers may purchase ITC resources from an ICC provider by a single subscriber in the framework of a single SLA as virtual resources set (VRS). With ICC, cloud subscribers are offered capacity on demand to match variations in workload. Accordingly, the number of VM instances in VRS may dynamically change.
To explicitly set contractual obligations on availability of resources, ICC subscribers may specify the range of resources of every type that is needed. That is, a subscriber may designate the maximum or minimum number of VM instances of every type of service that it may want to reserve. The values that set the reserved range for each resource are referred to as capacity ranges. Availability SLA for VMs within each range is specified by way of one or more availability service level objective (SLO) clauses.
ICC providers strive to maintain a minimal capacity that is sufficient to guarantee the VRSs' SLA commitments subject to the acceptable risk level of non-compliance due to congestion, as controlled by the ICC provider's business policy. The minimal capacity is the equivalent capacity that is defined for each type of resource, based on the number of instances of the resource that is needed to support all the resource demand of services with the particular level of congestion as a function of the acceptable risk level.
The equivalent capacity may be presented as a vector of resource, where for each type of resource, it is indicated how many instances of resources are available to satisfy the calculated risk level. It is desirable to manage the resources based on a projected demand so that the overall demand is less than the equivalent capacity expressed in terms of virtualized resources. In other words, it is desirable to maintain an equivalent capacity that is less than the actual physical capacity of the resource taking into consideration a safety margin.